// #include "simple_api_server.h"

// // 定义User DTO
// struct User {
//     int id;
//     std::string name;
//     std::string email;

//     // 将User转换为JSON
//     nlohmann::json toJson() const {
//         return {
//             {"id", id},
//             {"name", name},
//             {"email", email}
//         };
//     }

//     // 从JSON转换为User
//     static User fromJson(const nlohmann::json& j) {
//         User user;
//         user.id = j["id"];
//         user.name = j["name"];
//         user.email = j["email"];
//         return user;
//     }
// };

// int main() {
//     SimpleRest::RestApiHandler api;
//     const std::string data_file = "data.json";

//     // 初始化数据文件
//     nlohmann::json initial_data = {{"users", nlohmann::json::array()}};
//     api.saveDataToFile(data_file, initial_data);

//     // 添加API路由
//     api.addRoute("/users", SimpleRest::HttpMethod::GET, [&api, data_file](const SimpleRest::HttpRequest& request) {
//         nlohmann::json data = api.loadDataFromFile(data_file);
//         return SimpleRest::HttpResponse{200, data["users"]};
//     });

//     api.addRoute("/users", SimpleRest::HttpMethod::POST, [&api, data_file](const SimpleRest::HttpRequest& request) {
//         nlohmann::json data = api.loadDataFromFile(data_file);
//         User new_user = User::fromJson(request.body);
//         data["users"].push_back(new_user.toJson());
//         api.saveDataToFile(data_file, data);
//         return SimpleRest::HttpResponse{201, new_user.toJson()};
//     });

//     // 启动服务器在8080端口
//     api.startServer(8080);

//     return 0;
// }